/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package proyecto1compi1;
import java.io.File;
import javax.swing.filechooser.*;



public class FiltroPintar extends FileFilter {

    boolean isOpen = false;

    /**@param open recibe un boolean
     *se encargara cuando el filechooser
     *es para abrir o guardar*/
    public FiltroPintar(boolean open) {
        isOpen = open;
    }

    /**
     * Si esta dentro de los archivos permitidos se devuelve untrue
     * @param f recibe los files para filtrarlos*/
    public boolean accept(File f) {
        if (f.isDirectory()) {
            return true;
        }

        String extension = UtilidadPintar.getExtension(f);
        if (isOpen == true) {
            /*significa q es filtro para abrir*/

            if (extension != null) {
                if (extension.equals(UtilidadPintar.txt)) {
                    return true;
                } else {
                    return false;
                }
            }
        } else {/*es para guardar*/

            if (extension != null) {
                if (extension.equals(UtilidadPintar.txt)) {
                    return true;
                } else {
                    return false;
                }
            }


        }


        return false;
    }

    /**
     * @return devuelve los archivos habiles en el filechooser*/
    public String getDescription() {
        
        //pnt, cls,lnz 
        if (isOpen) {
            return ("Solo archivos con extencion " + ".pnt");
        } else {
            return ("solo archivos con extension " + ".pnt");

        }
    }
}
class UtilidadPintar {

    public final static String txt = "pnt";

    /**
     * Obtiene la extension de los archivos
     * @param recibe un archivo tipo FIle q viene desde el file chooser
     * @return recibe unicamente la extension del archivo
     */
    public static String getExtension(File f) {
        String extencion = null;
        String s = f.getName();
        int i = s.lastIndexOf('.');//busca el indice donde esta el punto

        if (i > 0 && i < s.length() - 1) {
            extencion = s.substring(i + 1).toLowerCase();
        }
        return extencion;
    }
}
